Members
Overall Objectives
Research Program
Application Domains
Highlights of the Year
New Software and Platforms
New Results
Partnerships and Cooperations
Dissemination
Bibliography
XML PDF e-pub
PDF e-Pub


Section: New Software and Platforms

SAMSON

SAMSON (Software for Adaptive Modeling and Simulation Of Nanosystems) is a software platform for computational nanoscience. SAMSON has a modular architecture that makes it suitable for different domains of nanoscience, including material science, life science, physics, electronics, chemistry, and education.

SAMSON Elements are modules for SAMSON, developed with the SAMSON Software Development Kit (SDK). SAMSON Elements help users perform tasks in SAMSON, including building new models, performing calculations, running interactive or offline simulations, and visualizing and interpreting results.

SAMSON Elements may contain different class types, including for example:

SAMSON Elements expose their functions to SAMSON and other Elements through an introspection mechanism, and may thus be integrated and pipelined.

SAMSON represents nanosystems using five categories of models:

Simulators (potentially interactive ones) are used to build physically-based models, and predict properties. All models and simulators are integrated into a hierarchical, layered structure that form the SAMSON data graph. SAMSON Elements interact with each other and with the data graph to perform modeling and simulation tasks. A signals and slots mechanism makes it possible for data graph nodes to send events when they are updated, which makes it possible to develop e.g., adaptive simulation algorithms.

SAMSON is developed in C++ and implements many features to ease development of SAMSON Elements, including:

SAMSON, SAMSON Elements and the SAMSON Software Development Kit are distributed via the SAMSON Connect website (http://www.samson-connect.net ). The site acts as a repository for the SAMSON Elements being uploaded by developers, and users of SAMSON choose and add Elements from SAMSON Connect.